Method and device for reconstructing an hdr image

ABSTRACT

The present principles relates to a method and device for reconstructing an High-Dynamic-Range image represented by one reconstructed High-Dynamic-Range luma component (Ŷ′) and two reconstructed High-Dynamic-Range chroma components (Û′, (I)) from a Standard-Dynamic-Range image represented by a Standard-Dynamic-Range luma component (y′, y′1) and two Standard-Dynamic-Range chroma components (u′, v′). The method is characterized in that the method comprises: inverse-mapping (22) said Standard-Dynamic-Range luma component (y′, y′1) to obtain said reconstructed High-Dynamic-Range luma component (Ŷ′); and correcting (33) said two Standard-Dynamic-Range chroma components (u′, v′) to obtain said two reconstructed High-Dynamic-Range chroma components (Û′, (I)) according to said Standard-Dynamic-Range luma component (y′, y′1) and said reconstructed High-Dynamic-Range luma component (Ŷ′).

1. FIELD

The present principles generally relate to image/video decoding.Particularly, but not exclusively, the technical field of the presentprinciples are related to coding and reconstructing of an image whosepixels values belong to a high-dynamic range.

2. BACKGROUND

The present section is intended to introduce the reader to variousaspects of art, which may be related to various aspects of the presentprinciples that are described and/or claimed below. This discussion isbelieved to be helpful in providing the reader with backgroundinformation to facilitate a better understanding of the various aspectsof the present principles. Accordingly, it should be understood thatthese statements are to be read in this light, and not as admissions ofprior art.

In the following, an image contains one or several arrays of samples(pixel values) in a specific image/video format which specifies allinformation relative to the pixel values of an image (or a video) andall information which may be used by a display and/or any other deviceto visualize and/or decode a image (or video) for example. An imagecomprises at least one component, in the shape of a first array ofsamples, usually a luma (or luminance) component, and, possibly, atleast one other component, in the shape of at least one other array ofsamples, usually a color component. Or, equivalently, the sameinformation may also be represented by a set of arrays of color samples,such as the traditional tri-chromatic RGB representation.

A pixel value is represented by a vector of C values, where C is thenumber of components. Each value of a vector is represented with anumber of bits which defines a maximal dynamic range of the pixelvalues.

Standard-Dynamic-Range images (SDR images) are images whose luminancevalues are represented with a limited number of bits (most often 8 or10). This limited representation does not allow correct rendering ofsmall signal variations, in particular in dark and bright luminanceranges. In high-dynamic range images (HDR images), the signalrepresentation is extended in order to maintain a high accuracy of thesignal over its entire range. In HDR images, pixel values representingluminance levels are usually represented in floating-point format(either 32-bit or 16-bit for each component, namely float orhalf-float), the most popular format being openEXR half-float format(16-bit per RGB component, i.e. 48 bits per pixel) or in integers with along representation, typically at least 16 bits.

The arrival of the High Efficiency Video Coding (HEVC) standard (ITU-TH.265 Telecommunication standardization sector of ITU (October 2014),series H: audiovisual and multimedia systems, infrastructure ofaudiovisual services—coding of moving video, High efficiency videocoding, Recommendation ITU-T H.265) enables the deployment of new videoservices with enhanced viewing experience, such as Ultra HD broadcastservices. In addition to an increased spatial resolution, Ultra HD canbring a wider color gamut (WCG) and a higher dynamic range (HDR) thanthe Standard dynamic range (SDR) HD-TV currently deployed. Differentsolutions for the representation and coding of HDR/WCG video have beenproposed (SMPTE 2014, “High Dynamic Range Electro-Optical TransferFunction of Mastering Reference Displays, or SMPTE ST 2084, 2014, orDiaz, R., Blinstein, S. and Qu, S. “Integrating HEVC Video Compressionwith a High Dynamic Range Video Pipeline”, SMPTE Motion Imaging Journal,Vol. 125, Issue 1. February 2016, pp 14-21).

SDR backward compatibility with decoding and rendering devices is animportant feature in some video distribution systems, such asbroadcasting or multicasting systems.

Dual-layer coding is one solution to support this feature. However, dueto its multi-layer design, this solution is not adapted to alldistribution workflows.

3. SUMMARY

The following presents a simplified summary of the present principles inorder to provide a basic understanding of some aspects of the presentprinciples. This summary is not an extensive overview of the presentprinciples. It is not intended to identify key or critical elements ofthe present principles. The following summary merely presents someaspects of the present principles in a simplified form as a prelude tothe more detailed description provided below.

The present principles set out to remedy at least one of the drawbacksof the prior art with a method for coding an High-Dynamic-Range imagerepresented by one High-Dynamic-Range luma component and twoHigh-Dynamic-Range chroma components. The method further comprises:

-   -   mapping said High-Dynamic-Range luma component to a        Standard-Dynamic-Range luma component in order to reduce the        dynamic range of the values of said High-Dynamic-Range luma        component;    -   inverse-mapping said Standard-Dynamic-Range luma component to a        reconstructed High-Dynamic-Range luma component;    -   correcting said two High-Dynamic-Range chroma components to        obtain two Standard-Dynamic-Range chroma components according to        said Standard-Dynamic-Range luma component and said        reconstructed High-Dynamic-Range luma component; and    -   encoding said Standard-Dynamic-Range luma component and said two        Standard-Dynamic-Range chroma components.

According to another of their aspects, the present principles furtherrelate to a device for coding an High-Dynamic-Range image represented byone High-Dynamic-Range luma component and two High-Dynamic-Range chromacomponents. The device further comprises means for:

-   -   mapping said High-Dynamic-Range luma component to a        Standard-Dynamic-Range luma component in order to reduce the        dynamic range of the values of said High-Dynamic-Range luma        component;    -   inverse-mapping said Standard-Dynamic-Range luma component to a        reconstructed High-Dynamic-Range luma component;    -   correcting said two High-Dynamic-Range chroma components to        obtain two Standard-Dynamic-Range chroma components according to        said Standard-Dynamic-Range luma component and said        reconstructed High-Dynamic-Range luma component; and    -   encoding said Standard-Dynamic-Range luma component and said two        Standard-Dynamic-Range chroma components.

According to an embodiment, correcting the two High-Dynamic-Range chromacomponents comprises dividing the two Standard-Dynamic-Range chromacomponents by a scaling function that depends on the ratio of saidreconstructed High-Dynamic-Range luma component overStandard-Dynamic-Range luma component.

According to an embodiment, information data relative to theinverse-mapping of said Standard-Dynamic-Range luma component areencoded into a bitstream as metadata.

According to an embodiment, said Standard-Dynamic-Range luma componentis adjusted according to said two Standard-Dynamic-Range chromacomponents before being encoded.

According to another of their aspects, the present principles relate toa method for reconstructing an High-Dynamic-Range image represented byone reconstructed High-Dynamic-Range luma component and tworeconstructed High-Dynamic-Range chroma components from aStandard-Dynamic-Range image represented by a Standard-Dynamic-Rangeluma component and two Standard-Dynamic-Range chroma components. Themethod further comprises:

-   -   inverse-mapping said Standard-Dynamic-Range luma component to        obtain said reconstructed High-Dynamic-Range luma component; and    -   correcting said two Standard-Dynamic-Range chroma components to        obtain said two reconstructed High-Dynamic-Range chroma        components according to said Standard-Dynamic-Range luma        component and said reconstructed High-Dynamic-Range luma        component.

According to another of their aspects, the present principles relate toa device for reconstructing an High-Dynamic-Range image represented byone reconstructed High-Dynamic-Range luma component and tworeconstructed High-Dynamic-Range chroma components from aStandard-Dynamic-Range image represented by a Standard-Dynamic-Rangeluma component and two Standard-Dynamic-Range chroma components. Thedevice further comprises means for:

-   -   inverse-mapping said Standard-Dynamic-Range luma component to        obtain said reconstructed High-Dynamic-Range luma component; and    -   correcting said two Standard-Dynamic-Range chroma components to        obtain said two reconstructed High-Dynamic-Range chroma        components according to said Standard-Dynamic-Range luma        component and said reconstructed High-Dynamic-Range luma        component.

According to an embodiment, correcting said two Standard-Dynamic-Rangechroma components comprises multiplying the Standard-Dynamic-Rangechroma components by a scaling function that depends on the ratio of thereconstructed HDR luma component over the SDR luma component.

According to an embodiment, information data relative to theinverse-mapping of the Standard-Dynamic-Range luma component are decodedfrom a bitstream in order to defined said inverse-mapping.

According to yet another of their aspects, the present principles relateto a computer program product comprising program code instructions toexecute the steps of a above method when this program is executed on acomputer.

4. BRIEF DESCRIPTION OF DRAWINGS

In the drawings, examples of the present principles are illustrated. Itshows:

FIG. 1 shows an end-to-end workflow supporting content production anddelivery to HDR and SDR displays;

FIG. 2a depicts in more details the pre-processing stage;

FIG. 2b depicts the HDR-to-SDR decomposition in more details;

FIG. 2c shows an example of a perceptual transfer function;

FIG. 2d shows an example of a piece-wise curve used for luma-mapping;

FIG. 2e shows an example of a curve used for converting back a signal toa linear light domain;

FIG. 3a depicts in more details the post-processing stage;

FIG. 3b depicts in more details the HDR reconstruction process;

FIG. 4 shows an example of an architecture of a device in accordancewith an example of present principles; and

FIG. 5 shows two remote devices communicating over a communicationnetwork in accordance with an example of present principles;

Similar or same elements are referenced with the same reference numbers.

5. DESCRIPTION OF EXAMPLE OF THE PRESENT PRINCIPLES

The present principles will be described more fully hereinafter withreference to the accompanying figures, in which examples of the presentprinciples are shown. The present principles may, however, be embodiedin many alternate forms and should not be construed as limited to theexamples set forth herein. Accordingly, while the present principles aresusceptible to various modifications and alternative forms, specificexamples thereof are shown by way of examples in the drawings and willherein be described in detail. It should be understood, however, thatthere is no intent to limit the present principles to the particularforms disclosed, but on the contrary, the disclosure is to cover allmodifications, equivalents, and alternatives falling within the spiritand scope of the present principles as defined by the claims.

The terminology used herein is for the purpose of describing particularexamples only and is not intended to be limiting of the presentprinciples. As used herein, the singular forms “a”, “an” and “the” areintended to include the plural forms as well, unless the context clearlyindicates otherwise. It will be further understood that the terms“comprises”, “comprising,” “includes” and/or “including” when used inthis specification, specify the presence of stated features, integers,steps, operations, elements, and/or components but do not preclude thepresence or addition of one or more other features, integers, steps,operations, elements, components, and/or groups thereof. Moreover, whenan element is referred to as being “responsive” or “connected” toanother element, it can be directly responsive or connected to the otherelement, or intervening elements may be present. In contrast, when anelement is referred to as being “directly responsive” or “directlyconnected” to other element, there are no intervening elements present.As used herein the term “and/or” includes any and all combinations ofone or more of the associated listed items and may be abbreviated as“/”.

It will be understood that, although the terms first, second, etc. maybe used herein to describe various elements, these elements should notbe limited by these terms. These terms are only used to distinguish oneelement from another. For example, a first element could be termed asecond element, and, similarly, a second element could be termed a firstelement without departing from the teachings of the present principles.

Although some of the diagrams include arrows on communication paths toshow a primary direction of communication, it is to be understood thatcommunication may occur in the opposite direction to the depictedarrows.

Some examples are described with regard to block diagrams andoperational flowcharts in which each block represents a circuit element,module, or portion of code which comprises one or more executableinstructions for implementing the specified logical function(s). Itshould also be noted that in other implementations, the function(s)noted in the blocks may occur out of the order noted. For example, twoblocks shown in succession may, in fact, be executed substantiallyconcurrently or the blocks may sometimes be executed in the reverseorder, depending on the functionality involved.

Reference herein to “in accordance with an example” or “in an example”means that a particular feature, structure, or characteristic describedin connection with the example can be included in at least oneimplementation of the present principles. The appearances of the phrasein accordance with an example” or “in an example” in various places inthe specification are not necessarily all referring to the same example,nor are separate or alternative examples necessarily mutually exclusiveof other examples.

Reference numerals appearing in the claims are by way of illustrationonly and shall have no limiting effect on the scope of the claims.

While not explicitly described, the present examples and variants may beemployed in any combination or sub-combination.

In the following, the capital symbols, for example (Y,U,V), designatecomponents of an HDR signal, and lower-case symbols, for example(y,u,v), designate components of a SDR signal. Prime symbols, in thefollowing, for example (Y′=Y^(1/γ),U′=U^(1/γ),V′=V^(1/γ)), designategamma-compressed components of a HDR signal when those prime symbols arecapital symbols and prime symbols, for example (y′,u′,v′), designategamma-compressed components of a SDR signal when those prime symbols arelower-case symbols.

The present principles are described for coding/decoding/reconstructingan image but extends to the coding/decoding/reconstructing of a sequenceof images (video) because each image of the sequence is sequentiallyencoded/decoded/reconstructed as described below.

FIG. 1 shows an end-to-end workflow supporting content production anddelivery to HDR and SDR displays in accordance with an example of thepresent principles.

At a pre-processing stage, an incoming HDR video is decomposed in an SDRvideo and metadata. The SDR video is then encoded with any SDR videocodec and an SDR bitstream is carried throughout an existing SDRdistribution network with accompanying metadata conveyed on a specificchannel or embedded in the SDR bitstream.

Preferably, the video coded is a HEVC codec such as the H265/HEVC codecor H264/AVC (“Advanced video coding for generic audiovisual Services”,SERIES H: AUDIOVISUAL AND MULTIMEDIA SYSTEMS, Recommendation ITU-TH.264, Telecommunication Standardization Sector of ITU, January 2012).

The metadata are typically carried by SEI messages when used inconjunction with an HEVC or H264/AVC codec such as the HEVC ColourRemapping Information (CRI) or Mastering Display Colour Volume (MDCV)SEI message.

The SDR bitstream is decoded and a decoded SDR video is then availablefor a SDR Consumer Electronics (CE) display.

Next, at a post-processing stage, which is functionally the inverse ofthe pre-processing stage, the HDR video is reconstructed from thedecoded SDR video and metadata obtained from a specific channel or fromthe SDR bitstream.

This is a single layer encoding/decoding scheme that is adapted to alldistribution workflows because a single SDR stream may be transmitted(including metadata) while allowing backward compatibility with SDR CEdevices.

FIG. 2a depicts in more details the pre-processing stage.

The core component of the pre-processing stage is the HDR-to-SDRdecomposition that generates an SDR video and metadata from the HDRvideo.

More precisely, the HDR-to-SDR decomposition aims at converting a HDRvideo represented in a specific input format to a SDR video representedin a specific output format according to the embodiment discloses belowbut the present principles are not limited to specific input/outputcolor space or gamut.

Optionally, the format of the HDR video, respectively the targetedformat of the SDR video, may be adapted to said specific input format,respectively specific output format.

Said input/output format adaptation may include color space conversionand/or color gamut mapping. Usual format adapting processes may be usedsuch as RGB-to-YUV or YUV-to-RGB conversion, BT.709-to-BT.2020 orBT.2020-to-BT.709, down-sampling or up-sampling chroma components, etc.Note that the well-known YUV color space refers also to the well-knownYCbCr in the prior art.

Said input format adaptation may also comprise deriving a HDR lumacomponent Y′ and HDR chroma components U′ and V′ of an HDR image of theHDR video from a weighted sum of gamma-compressed versions of the colorcomponents (R,G,B) of the HDR image.

The HDR luma component Y′ may thus be derived as follows:

$\begin{matrix}{Y^{\prime} = {{A_{1}\begin{bmatrix}R^{1/\gamma} \\G^{1/\gamma} \\B^{1/\gamma}\end{bmatrix}} = {A_{1}\begin{bmatrix}R^{\prime} \\G^{\prime} \\B^{\prime}\end{bmatrix}}}} & (1)\end{matrix}$

and the HDR chroma components U′ and V′ are derived as follows:

$\begin{matrix}{\begin{bmatrix}U^{\prime} \\V^{\prime}\end{bmatrix} = {{\begin{bmatrix}A_{2} \\A_{3}\end{bmatrix}\begin{bmatrix}R^{1/\gamma} \\G^{1/\gamma} \\B^{1/\gamma}\end{bmatrix}} = {\begin{bmatrix}A_{2} \\A_{3}\end{bmatrix}\begin{bmatrix}R^{\prime} \\G^{\prime} \\B^{\prime}\end{bmatrix}}}} & (2)\end{matrix}$

where A=[A₁ A₂ A₃]^(T) may be the canonical 3×3 RGB-to-YUV conversionmatrix (e.g. as specified in ITU-R Rec. BT.2020 or ITU-R Rec. BT.709depending on the color space), A₁ A₂ A₃ being 1×3 matrices and γ may bea gamma factor equal to 2.4 for example.

Note, the HDR luma component Y′, which is a non-linear signal, isdifferent of the linear luminance component which is usually obtainedfrom the color components of a signal.

FIG. 2b depicts the HDR-to-SDR decomposition of an HDR image of a HDRvideo. More precisely, a High-Dynamic-Range (HDR) luma component Y′ andtwo HDR chroma components U′ and V′ are obtained from said HDR image.

A HDR component means an image component whose values are representedwith a high number of bits, typically 32-bit or 16-bit. In opposite, aStandard-Dynamic-Range (SDR) component means an image component whosevalues are represented with a limited number of bits, typically 8-bit or10-bit.

In step 21, the HDR luma component Y′ is mapped to a SDR luma componenty′₁.

Said mapping is based on a perceptual transfer function TM, whose thegoal is to convert a HDR luma component into an SDR luma component, thusreducing the dynamic range of the values of said HDR luma component. Thevalues of a SDR component belong thus to a lower dynamic range than thevalues of a HDR component.

Said perceptual transfer function TM uses a limited set of controlparameters.

The mapping starts by converting an input HDR luma signal (e.g. the HDRluma component Y′) to a perceptually-uniform domain using the perceptualtransfer function TM.

FIG. 2C shows an illustration of a perceptual transfer function whichmay be used for mapping luminance components but a similar perceptualtransfer function for mapping luma components may be used.

The mapping is controlled by a mastering display peak luminanceparameter (equal to 5000 cd/m² in FIG. 2c ). To better control the blackand white levels, a signal stretching between content-dependent blackand white levels is applied. Then the converted signal is mapped using apiece-wise curve constructed out of three parts, as illustrated in FIG.2d . The lower and upper sections are linear, the steepness beingdetermined by the shadowGain and highlightGain parameters respectively.The mid-section is a parabola providing a smooth bridge between the twolinear sections. The width of the cross-over is determined by themidToneWidthAdjFactor parameter.

The SDR luma component y′₁ is given by:

y′ ₁ =TM[Y′]  (3)

All the parameters controlling the mapping may be conveyed as lumametadata for example by using a SEI message as defined in JCTVC-W0133 tocarry the SMPTE ST 2094-20 metadata.

In step 22 in FIG. 2b , a reconstructed HDR luma component

may be obtained by inverse-mapping the SDR luma component y′₁:

=ITM (y′ ₁)   (4)

where ITM is the inverse of the perceptual transfer function TM.

Said inverse-mapping (step 22) is a reciprocal of the mapping of step21.

The dynamic range of the values of the reconstructed HDR luma componentare thus increased. The values of the reconstructed component

belong thus to the dynamic range of the values of the HDR component Y′.

FIG. 2e shows an example of the inverse of the perceptual transferfunction TM (FIG. 2c ) to illustrate how a perceptual optimized videosignal may be converted back to the linear light domain based on atargeted SDR display maximum luminance, for example 100 cd/m².

In step 23 in FIG. 2b , two SDR chroma components u′, v′ are derived bycorrecting the two HDR chroma components U′, V′ according to the SDRluma component y′₁ and the reconstructed HDR luma component

.

This step 23 allows to control the SDR colors and guarantees theirmatching to the HDR colors.

The correction of the chroma components may be maintain under control bytuning the parameters of the mapping (inverse mapping). The colorsaturation and hue are thus under control. Such a control is notpossible, usually, when a non-parametric perceptual transfer function isused.

According to an embodiment of step 23, the HDR chroma components U′ andV′ are divided by a scaling function β (y′₁) that depends on the ratioof the reconstructed HDR luma component

over the SDR luma component y′₁.

Mathematically speaking, the two SDR chroma components u′, v′ are givenby:

$\begin{matrix}{\begin{bmatrix}u^{\prime} \\v^{\prime}\end{bmatrix} = {\frac{1}{\beta ( y_{1}^{\prime} )}*\begin{bmatrix}U^{\prime} \\V^{\prime}\end{bmatrix}}} & (5)\end{matrix}$

where

${\beta ( y_{1}^{\prime} )} = {\frac{{{ITM}( y_{1}^{\prime} )} \cdot \Omega}{y_{1}^{\prime}} = \frac{\cdot \Omega}{y_{1}^{\prime}}}$

and Ω is constant value depending on the color primaries of the HDRimage (equals to 1.3 for BT.2020 for example).

Optionally, in step 24, the SDR luma component y′₁ may be adjusted tofurther control the perceived saturation, as follows:

y′=y′ ₁−Max(0, a×u′+b×v′)   (6)

where a and b are two control parameters for adjusting the mapping ofluma components (also denoted chroma to luma injection parameters). Asan example, a=0 and b=0.1.

This step 24 allows to control the SDR colors and to guarantee theirmatching to the HDR colors. This is in general not possible when using afixed transfer function. Step 24 may be useful when the SDR image (builtfrom the components u′,u′,v′) is displayed.

The SDR luma and chroma component y′ (or y′₁), u′, v′ are outputs of theHDR-to-SDR decomposition and conveyed by a SDR bitstream over a specificchannel. The luma metadata are also outputs of the HDR-to-SDRdecomposition and may carry, for example, information data relative tothe perceptual transfer function TM (step 21) or, equivalently,information data relative to the inverse of the perceptual transferfunction TM (step 22). These luma metadata may be conveyed in the SDRbitstream or, alternatively, by another bitstream possibly transmittedover a different channel.

Note that other metadata required by the decoder may also be conveyed bythe SDR bitstream or any other bitstream such as metadata relative tothe parameters a and b, the definition of the color primaries and/orcolor gamut.

FIG. 3a depicts in more details the post-processing stage.

The core component of the post-processing stage is the HDRreconstruction that reconstructs an HDR video from a (decoded) SDR videoand the luma metadata.

More precisely, the HDR reconstruction aims at converting SDR videorepresented in a specific input format to an output HDR videorepresented in a specific output format according to the embodimentdiscloses below but the present principles are not limited to specificinput/output color space or gamut.

Said input or output format adaptation may include color spaceconversion and/or color gamut mapping. Usual format adapting processesmay be used such as RGB-to-YUV or YUV-to-RGB conversion,BT.709-to-BT.2020 or BT.2020-to-BT.709, down-sampling or up-samplingchroma components, etc.

Optionally, the format of the reconstructed HDR video may be adapted toa targeted system characteristics (e.g. a Set-Top-Box, a connected TV)and/or an inverse gamut mapping may be used when the decoded SDR video(input of the HDR reconstruction stage) and the reconstructed HDR video(output of the HDR reconstruction stage) are represented in differentcolor spaces and/or gamut.

Said output format adapting may also comprise deriving gamma-compressedcolor components (R′,G′,B′) of a reconstructed HDR image from a weightedsum of gamma-compressed luma Y′ and chroma U′, V′ components:

$\begin{matrix}{\begin{bmatrix}R^{\gamma} \\G^{\prime} \\B^{\prime}\end{bmatrix} = {A_{1}\begin{bmatrix}Y^{\prime} \\U^{\prime} \\V^{\prime}\end{bmatrix}}} & (7)\end{matrix}$

where A⁻¹ may be the canonical 3×3 YUV-to-RGB conversion matrix (e.g.BT.2020 or BT.709 depending on the color space).

Said output format adapting may further comprises obtaining colorcomponents (R,G,B) from gamma-compressed versions of said colorcomponents:

$\begin{matrix}{\begin{bmatrix}R \\G \\B\end{bmatrix} = {A^{- 1}\begin{bmatrix}R^{\gamma} \\G^{\gamma} \\B^{\gamma}\end{bmatrix}}} & (8)\end{matrix}$

where γ may be a gamma factor equal to 2.4 for example.

FIG. 3b depicts in more details the HDR reconstruction process. Moreprecisely, a reconstructed HDR image is formed (obtained) from areconstructed HDR luma component

and two reconstructed HDR chroma components

and

.

The HDR reconstruction is the functional inverse of the HDR-to-SDRdecomposition (FIG. 2b ).

The SDR luma and chroma component y′, u′, v′ and the luma metadata areobtained, for example from the SDR bitstream and/or from differentchannels.

Optionally, in step 31, the SDR luma component y′ may be desaturated, asfollows:

y′ ₁ =y′+Max(0, a×u′+b×v′)   (9)

where a and b are two control parameters for adjusting the mapping asdiscussed above.

In step 22, the SDR luma component y′₁ (or y′) is inverse-mapped to thereconstructed HDR luma component

(eq. 4). Said inverse-mapping taking into account the inverse (ITM) ofthe perceptual transfer function (TM), which may be defined according tothe luma metadata.

In step 33, the SDR chroma components (u′,v′) are corrected to obtainthe two reconstructed HDR chroma components

and

according to said SDR luma component y′₁ (or y′) and said reconstructedHDR luma component

.

Said chroma correcting is a reciprocal of the chroma correcting of step23.

According to an embodiment of step 33, the SDR chroma components (u′,v′)are multiplied by a scaling function β (.) that depends on the ratio ofthe reconstructed HDR luma component

over the SDR luma component y′₁ (or y′).

Mathematically speaking, the two reconstructed HDR chroma components

and

are given by when the SDR luma component y′₁ is considered:

$\begin{matrix}{\begin{bmatrix} \\{\hat{V}}^{\prime}\end{bmatrix}{{\beta ( y_{1}^{\prime} )}\begin{bmatrix}u^{\prime} \\v^{\prime}\end{bmatrix}}} & (10)\end{matrix}$

where

${\beta ( y_{1}^{\prime} )} = {\frac{{{ITM}( y_{1}^{\prime} )} \cdot \Omega}{y_{1}^{\prime}} = \frac{\cdot \Omega}{y_{1}^{\prime}}}$

and depends on the SDR luma component y′₁ and Ω is constant valuedepending on the color primaries of the HDR image (equals to 1.3 forBT.2020 for example).

Equivalently, when the SDR luma component y′ is considered, the tworeconstructed HDR chroma components

and

are given by equation (10) in which y′₁ is replaced by y′.

On FIG. 1-3 b, the modules are functional units, which may or not be inrelation with distinguishable physical units. For example, these modulesor some of them may be brought together in a unique component orcircuit, or contribute to functionalities of a software. A contrario,some modules may potentially be composed of separate physical entities.The apparatus which are compatible with the present principles areimplemented using either pure hardware, for example using dedicatedhardware such ASIC or FPGA or VLSI, respectively «Application SpecificIntegrated Circuit», «Field-Programmable Gate Array», «Very Large ScaleIntegration», or from several integrated electronic components embeddedin a device or from a blend of hardware and software components.

FIG. 4 represents an exemplary architecture of a device 40 which may beconfigured to implement a method described in relation with FIG. 1-3 b.

Device 40 comprises following elements that are linked together by adata and address bus 41:

-   -   a microprocessor 42 (or CPU), which is, for example, a DSP (or        Digital Signal Processor);    -   a ROM (or Read Only Memory) 43;    -   a RAM (or Random Access Memory) 44;    -   an I/O interface 45 for reception of data to transmit, from an        application; and    -   battery 46.

In accordance with an example, the battery 46 is external to the device.In each of mentioned memory, the word «register» used in thespecification can correspond to area of small capacity (some bits) or tovery large area (e.g. whole program or large amount of received ordecoded data). The ROM 43 comprises at least a program and parameters.The ROM 43 may store algorithms and instructions to perform techniquesin accordance with present principles. When switched on, the CPU 42uploads the program in the RAM and executes the correspondinginstructions.

RAM 44 comprises, in a register, the program executed by the CPU 42 anduploaded after switch on of the device 40, input data in a register,intermediate data in different states of the method in a register, andother variables used for the execution of the method in a register.

The implementations described herein may be implemented in, for example,a method or a process, an apparatus, a software program, a data stream,or a signal. Even if only discussed in the context of a single form ofimplementation (for example, discussed only as a method or a device),the implementation of features discussed may also be implemented inother forms (for example a program). An apparatus may be implemented in,for example, appropriate hardware, software, and firmware. The methodsmay be implemented in, for example, an apparatus such as, for example, aprocessor, which refers to processing devices in general, including, forexample, a computer, a microprocessor, an integrated circuit, or aprogrammable logic device. Processors also include communicationdevices, such as, for example, computers, cell phones, portable/personaldigital assistants (“PDAs”), and other devices that facilitatecommunication of information between end-users.

In accordance with an example of encoding or an encoder, the HDR videoor an HDR image of a HDR video is obtained from a source. For example,the source belongs to a set comprising:

-   -   a local memory (43 or 44), e.g. a video memory or a RAM (or        Random Access Memory), a flash memory, a ROM (or Read Only        Memory), a hard disk;    -   a storage interface (45), e.g. an interface with a mass storage,        a RAM, a flash memory, a ROM, an optical disc or a magnetic        support;    -   a communication interface (45), e.g. a wireline interface (for        example a bus interface, a wide area network interface, a local        area network interface) or a wireless interface (such as a IEEE        802.11 interface or a Bluetooth® interface); and    -   an image capturing circuit (e.g. a sensor such as, for example,        a CCD (or Charge-Coupled Device) or CMOS (or Complementary        Metal-Oxide-Semiconductor)).

In accordance with an example of the decoding or a decoder, the decodedSRD video or decoded HDR video is sent to a destination; specifically,the destination belongs to a set comprising:

-   -   a local memory (43 or 44), e.g. a video memory or a RAM, a flash        memory, a hard disk;    -   a storage interface (45), e.g. an interface with a mass storage,        a RAM, a flash memory, a ROM, an optical disc or a magnetic        support;    -   a communication interface (45), e.g. a wireline interface (for        example a bus interface (e.g. USB (or Universal Serial Bus)), a        wide area network interface, a local area network interface, a        HDMI (High Definition Multimedia Interface) interface) or a        wireless interface (such as a IEEE 802.11 interface, WiFi® or a        Bluetooth® interface); and    -   a display.

In accordance with examples of encoding or encoder, the SDR bitstreamand/or the other bitstream carrying the metadata are sent to adestination. As an example, one of these bitstream or both are stored ina local or remote memory, e.g. a video memory (44) or a RAM (44), a harddisk (43). In a variant, one or both of these bitstreams are sent to astorage interface (45), e.g. an interface with a mass storage, a flashmemory, ROM, an optical disc or a magnetic support and/or transmittedover a communication interface (45), e.g. an interface to a point topoint link, a communication bus, a point to multipoint link or abroadcast network.

In accordance with examples of decoding or decoder, the SDR bitstreamand/or the other bitstream carrying the metadata is obtained from asource. Exemplarily, the bitstream is read from a local memory, e.g. avideo memory (44), a RAM (44), a ROM (43), a flash memory (43) or a harddisk (43). In a variant, the bitstream is received from a storageinterface (45), e.g. an interface with a mass storage, a RAM, a ROM, aflash memory, an optical disc or a magnetic support and/or received froma communication interface (45), e.g. an interface to a point to pointlink, a bus, a point to multipoint link or a broadcast network.

In accordance with examples, device 40 being configured to implement anencoding method as described above, belongs to a set comprising:

-   -   a mobile device;    -   a communication device;    -   a game device;    -   a tablet (or tablet computer);    -   a laptop;    -   a still image camera;    -   a video camera;    -   an encoding chip;    -   a still image server; and    -   a video server (e.g. a broadcast server, a video-on-demand        server or a web server).

In accordance with examples, device 40 being configured to implement adecoding method as described above, belongs to a set comprising:

-   -   a mobile device;    -   a communication device;    -   a game device;    -   a set top box;    -   a TV set;    -   a tablet (or tablet computer);    -   a laptop;    -   a display and    -   a decoding chip.

According to an example of the present principles, illustrated in FIG.5, in a transmission context between two remote devices A and B over acommunication network NET, the device A comprises a processor inrelation with memory RAM and ROM which are configured to implement amethod for encoding an image as described above and the device Bcomprises a processor in relation with memory RAM and ROM which areconfigured to implement a method for decoding as described above.

In accordance with an example, the network is a broadcast network,adapted to broadcast still images or video images from device A todecoding devices including the device B.

Implementations of the various processes and features described hereinmay be embodied in a variety of different equipment or applications.Examples of such equipment include an encoder, a decoder, apost-processor processing output from a decoder, a pre-processorproviding input to an encoder, a video coder, a video decoder, a videocodec, a web server, a set-top box, a laptop, a personal computer, acell phone, a PDA, and any other device for processing a image or avideo or other communication devices. As should be clear, the equipmentmay be mobile and even installed in a mobile vehicle.

Additionally, the methods may be implemented by instructions beingperformed by a processor, and such instructions (and/or data valuesproduced by an implementation) may be stored on a computer readablestorage medium. A computer readable storage medium can take the form ofa computer readable program product embodied in one or more computerreadable medium(s) and having computer readable program code embodiedthereon that is executable by a computer. A computer readable storagemedium as used herein is considered a non-transitory storage mediumgiven the inherent capability to store the information therein as wellas the inherent capability to provide retrieval of the informationtherefrom. A computer readable storage medium can be, for example, butis not limited to, an electronic, magnetic, optical, electromagnetic,infrared, or semiconductor system, apparatus, or device, or any suitablecombination of the foregoing. It is to be appreciated that thefollowing, while providing more specific examples of computer readablestorage mediums to which the present principles can be applied, ismerely an illustrative and not exhaustive listing as is readilyappreciated by one of ordinary skill in the art: a portable computerdiskette; a hard disk; a read-only memory (ROM); an erasableprogrammable read-only memory (EPROM or Flash memory); a portablecompact disc read-only memory (CD-ROM); an optical storage device; amagnetic storage device; or any suitable combination of the foregoing.

The instructions may form an application program tangibly embodied on aprocessor-readable medium.

Instructions may be, for example, in hardware, firmware, software, or acombination. Instructions may be found in, for example, an operatingsystem, a separate application, or a combination of the two. A processormay be characterized, therefore, as, for example, both a deviceconfigured to carry out a process and a device that includes aprocessor-readable medium (such as a storage device) having instructionsfor carrying out a process. Further, a processor-readable medium maystore, in addition to or in lieu of instructions, data values producedby an implementation.

As will be evident to one of skill in the art, implementations mayproduce a variety of signals formatted to carry information that may be,for example, stored or transmitted. The information may include, forexample, instructions for performing a method, or data produced by oneof the described implementations. For example, a signal may be formattedto carry as data the rules for writing or reading the syntax of adescribed example of the present principles, or to carry as data theactual syntax-values written by a described example of the presentprinciples. Such a signal may be formatted, for example, as anelectromagnetic wave (for example, using a radio frequency portion ofspectrum) or as a baseband signal. The formatting may include, forexample, encoding a data stream and modulating a carrier with theencoded data stream. The information that the signal carries may be, forexample, analog or digital information. The signal may be transmittedover a variety of different wired or wireless links, as is known. Thesignal may be stored on a processor-readable medium.

A number of implementations have been described. Nevertheless, it willbe understood that various modifications may be made. For example,elements of different implementations may be combined, supplemented,modified, or removed to produce other implementations. Additionally, oneof ordinary skill will understand that other structures and processesmay be substituted for those disclosed and the resulting implementationswill perform at least substantially the same function(s), in at leastsubstantially the same way(s), to achieve at least substantially thesame result(s) as the implementations disclosed. Accordingly, these andother implementations are contemplated by this application.

1. A method for coding an High-Dynamic-Range image represented by oneHigh-Dynamic-Range luma component and two High-Dynamic-Range chromacomponents wherein the method comprises: applying a transfer function tosaid High-Dynamic-Range luma component to obtain aStandard-Dynamic-Range luma component, said transfer function beingdefined -in order to reduce the dynamic range of the values of saidHigh-Dynamic-Range luma component; applying the inverse of the transferfunction to said Standard-Dynamic-Range luma component to obtain areconstructed High-Dynamic-Range luma component; correcting said twoHigh-Dynamic-Range chroma components to obtain twoStandard-Dynamic-Range chroma components by dividing the twoHigh-Dynamic-Range chroma components by a scaling function that dependson the ratio of said reconstructed High-Dynamic-Range luma componentover Standard-Dynamic-Range luma component; and encoding in a bitstreamsaid Standard-Dynamic-Range luma component and said twoStandard-Dynamic-Range chroma components.
 2. A device for coding anHigh-Dynamic-Range image represented by one High-Dynamic-Range lumacomponent and two High-Dynamic-Range chroma components wherein thedevice comprises at least one processor configured to: apply a transferfunction to said High-Dynamic-Range luma component to obtain aStandard-Dynamic-Range luma component, said transfer function beingdefined in order to reduce the dynamic range of the values of saidHigh-Dynamic-Range luma component; apply the inverse of the transferfunction to said Standard-Dynamic-Range luma component to obtain areconstructed High-Dynamic-Range luma component; correct said twoHigh-Dynamic-Range chroma components to obtain twoStandard-Dynamic-Range chroma components by dividing the twoHigh-Dynamic-Range chroma components by a scaling function that dependson the ratio of said reconstructed High-Dynamic-Range luma componentover Standard-Dynamic-Range luma component; and encoding in a bitstreamsaid Standard-Dynamic-Range luma component and said twoStandard-Dynamic-Range chroma components.
 3. The method of claim 1wherein said method also comprises steps for encoding into a bitstreamas metadata, information data relative to the inverse-mapping of saidStandard-Dynamic-Range luma component.
 4. The method of claim 1, whereinsaid method also comprises steps for adjusting saidStandard-Dynamic-Range luma component according to said twoStandard-Dynamic-Range chroma components before being encoded.
 5. Amethod for reconstructing an High-Dynamic-Range image represented by onereconstructed High-Dynamic-Range luma component and two reconstructedHigh-Dynamic-Range chroma components from a Standard-Dynamic-Range imagerepresented by a Standard-Dynamic-Range luma component and twoStandard-Dynamic-Range chroma components wherein the method comprises:applying the inverse of the transfer function to saidStandard-Dynamic-Range luma component to obtain said reconstructedHigh-Dynamic-Range luma component; and correcting said twoStandard-Dynamic-Range chroma components to obtain said tworeconstructed High-Dynamic-Range chroma components by multiplying saidStandard-Dynamic-Range chroma components by a scaling function thatdepends on the ratio of said reconstructed HDR luma component over saidSDR luma component.
 6. A device for reconstructing an High-Dynamic-Rangeimage represented by one reconstructed High-Dynamic-Range luma componentand two reconstructed High-Dynamic-Range chroma components from aStandard-Dynamic-Range image represented by a Standard-Dynamic-Rangeluma component and two Standard-Dynamic-Range chroma components, whereinthe device at least one processor configured to: apply the inverse ofthe transfer function to said Standard-Dynamic-Range luma component toobtain said reconstructed High-Dynamic-Range luma component; and correctsaid two Standard-Dynamic-Range chroma components to obtain said tworeconstructed High-Dynamic-Range chroma components by multiplying saidStandard-Dynamic-Range chroma components by a scaling function thatdepends on the ratio of said reconstructed HDR luma component over saidSDR luma component.
 7. The method of claim 5 wherein said method alsocomprises steps for decoding from a bitstream information data relativeto the inverse-mapping of the Standard-Dynamic-Range luma component inorder to define said inverse-mapping.
 8. The method of claim 5, whereinsaid method also comprises steps for adjusting theStandard-Dynamic-Range luma component according to said twoStandard-Dynamic-Range chroma components before inverse-mapped.
 9. Acomputer program product comprising program code instructions to executethe steps of the method according to claim 1 when this program isexecuted on a computer.
 10. The device of claim 2, wherein said at leastone processor is further configured to encoding into a bitstream asmetadata, information data relative to the inverse-mapping of saidStandard-Dynamic-Range luma component.
 11. The device of claim 2,wherein aid at least one processor is further configured to adjustingsaid Standard-Dynamic-Range luma component according to said twoStandard-Dynamic-Range chroma components before being encoded.
 12. Thedevice of claim 6, wherein said at least one processor is furtherconfigured to decoding from a bitstream information data relative to theinverse-mapping of the Standard-Dynamic-Range luma component in order todefine said inverse-mapping.
 13. The device of claim 6, wherein said atleast one processor is further configured to adjusting theStandard-Dynamic-Range luma component according to said twoStandard-Dynamic-Range chroma components before inverse-mapped.
 14. Anon-transitory computer-readable medium including instructions forcausing one or more processors to code an High-Dynamic-Range imagerepresented by one High-Dynamic-Range luma component and twoHigh-Dynamic-Range chroma components, by: applying a transfer functionto said High-Dynamic-Range luma component to obtain aStandard-Dynamic-Range luma component, said transfer function beingdefined in order to reduce the dynamic range of the values of saidHigh-Dynamic-Range luma component; applying the inverse of the transferfunction to said Standard-Dynamic-Range luma component to obtain areconstructed High-Dynamic-Range luma component; correcting said twoHigh-Dynamic-Range chroma components to obtain twoStandard-Dynamic-Range chroma components by dividing the twoHigh-Dynamic-Range chroma components by a scaling function that dependson the ratio of said reconstructed High-Dynamic-Range luma componentover Standard-Dynamic-Range luma component; and encoding in a bitstreamsaid Standard-Dynamic-Range luma component and said twoStandard-Dynamic-Range chroma components.
 15. A non-transitorycomputer-readable medium including instructions for causing one or moreprocessors to reconstruct an High-Dynamic-Range image represented by onereconstructed High-Dynamic-Range luma component and two reconstructedHigh-Dynamic-Range chroma components from a Standard-Dynamic-Range imagerepresented by a Standard-Dynamic-Range luma component and twoStandard-Dynamic-Range chroma components, by: applying the inverse ofthe transfer function to said Standard-Dynamic-Range luma component toobtain said reconstructed High-Dynamic-Range luma component; andcorrecting said two Standard-Dynamic-Range chroma components to obtainsaid two reconstructed High-Dynamic-Range chroma components bymultiplying said Standard-Dynamic-Range chroma components by a scalingfunction that depends on the ratio of said reconstructed HDR lumacomponent over said SDR luma component.